PerformanceNavigationTiming: activationStart property

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die activationStart-Eigenschaft ist eine schreibgeschützte Eigenschaft, die die Zeit darstellt, die zwischen dem Start des Pre-Renderings eines Dokuments und seiner Aktivierung verstreicht.

Wert

Ein DOMHighResTimeStamp, der die Dauer zwischen dem Start des Dokument-Pre-Renderings und der Aktivierung in Millisekunden darstellt.

Der Wert ist 0, wenn die Seite nicht vorgerendert wurde oder sich noch im Pre-Rendering befindet.

Beispiele

Erkennen von vorgerenderten Seiten

Wenn ein vorgerendertes Dokument aktiviert wird, wird activationStart auf die aktuelle Zeit gesetzt. Die folgende Funktion kann überprüfen, ob eine Seite vorgerendert wird oder bereits vorgerendert wurde:

js
function pagePrerendered() {
  return (
    document.prerendering ||
    self.performance?.getEntriesByType?.("navigation")[0]?.activationStart > 0
  );
}

Messen von vom Nutzer wahrgenommenen Leistungsmeilensteinen

Bei vorgerenderten Seiten kann es sein, dass eine Seite lange bevor sie tatsächlich aufgerufen wird, erstellt wurde. Beim Einsatz der Performance API auf vorgerenderten Seiten ist es wichtig, die zurückgegebenen Werte mit activationStart zu vergleichen, um irreführende Messungen zu vermeiden.

js
// Time to when activation occurred
let activationStart =
  performance.getEntriesByType("navigation")[0].activationStart;

// Time to first paint
let firstPaint = performance.getEntriesByName("first-paint")[0].startTime;

// Time to first contentful paint
let firstContentfulPaint = performance.getEntriesByName(
  "first-contentful-paint",
)[0].startTime;

console.log(`time to first paint: ${firstPaint - activationStart}`);
console.log(
  `time to first-contentful-paint: ${firstContentfulPaint - activationStart}`,
);

Spezifikationen

Specification
Prerendering Revamped
# dom-performancenavigationtiming-activationstart

Browser-Kompatibilität

Siehe auch